/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package biblioteca;



/**
 *
 * @author alumnom
 */
public class Libros {
    
    //variables (privadas, no puedo acceder fuera de la clase, o publicas)
    private String titulo;
    private String autor;
    private String genero; 
    private String resumen;
    private String usuario;
    private int isbn;
    public String comentario;
    String fechap;
    
    
    static private int nlibrosPrestados = 0;    //variable estática:no se está influenciando en ninguna instancia(no "this.")
    
    
    //Constructor
    Libros (String t, String a, String g, String r, int ISBN)
    {
        this.titulo = t;
        this.autor = a;
        this.genero = g;
        this.resumen = r;
        this.isbn = ISBN;
    }
    
    //Propiedades: metodos especiales para dar/cambiar(set(nuevo_valor)) u obtener(get) valor a las variables privadas
    String getTitulo()
    {
        return this.titulo;
    }
     
    String getAutor()
    {
        return this.autor;
    } 
     
    String getGenero()
    {
        return this.genero;
    }
    
    String getResumen()
    {
        return this.resumen;
    } 
    
    void setResumen( String nresumen)
    {
        this.resumen = nresumen;
    }  
    
    String getUsuario()
    {
        return this.usuario;
    } 
    
    int getIsbn()
    {
        return this.isbn;
    }
    /********************************metodos******************************/
    public void Comentar( String nComentario) //los métodos tienen parámetros(ejemplo: nComentario)
    {
       this.comentario= nComentario;
    }
    public String VerComentarios()
    {
        return this.comentario;
    }
    public String Leer()
    {
        return this.titulo + ": " + this.resumen;
    }
    
    void Prestar(String nUsuario,String fecha)
    {
        
        this.usuario=nUsuario;
        this.fechap = fecha;
        nlibrosPrestados++;
    }
    
    void Devolver()
    {
        this.usuario="";
        nlibrosPrestados--;
    }
    public String HistorialPrestamos()
    {
        return "Fecha préstamo: " + this.fechap + " Usuario: " + this.usuario;
    }
    
    /******************************métodos estáticos***************************/
    static int getLibrosPrestados()
    {
        return nlibrosPrestados;
    }
}
